Timm Bäder [Mon, 21 Dec 2020 11:44:01 +0000 (12:44 +0100)]
label: Refactor get_layout_location()
Rename a few local variables to be clearer about whether they belong to
the widget or to the layout.
Remove a workaround for an old bug that is no longer valid. We don't
underallocate the layout anymore. Aways center vertically, with respect
to the yalign.
Timm Bäder [Mon, 21 Dec 2020 11:26:22 +0000 (12:26 +0100)]
label: Refactor snapshot()
Use two early-out style if statements to reduce indentation in this
entire function.
Timm Bäder [Mon, 21 Dec 2020 09:21:24 +0000 (10:21 +0100)]
textlayout: Remove dead offset_y code
Timm Bäder [Mon, 21 Dec 2020 08:56:58 +0000 (09:56 +0100)]
rendernode: Different uniformity in border nodes
Means they are different and a diff is impossible.
Timm Bäder [Mon, 21 Dec 2020 08:56:19 +0000 (09:56 +0100)]
rendernode: Sort diff() requirements by complexity
Timm Bäder [Mon, 21 Dec 2020 08:28:26 +0000 (09:28 +0100)]
renderborder: Avoid 0 width outline color nodes
Timm Bäder [Mon, 21 Dec 2020 07:34:25 +0000 (08:34 +0100)]
layoutoverlay: Avoid adding transparent color nodes
We have a region for the border here, but the color is defined as
transparent black because we don't want to render anything for it.
This way, the generated .node file for the listbox demo in gtk4-demo
with enabled layout borders is 3.5MB instead of 3.8MB.
Timm Bäder [Mon, 21 Dec 2020 07:30:51 +0000 (08:30 +0100)]
layoutoverlay: Avoid adding 0 sized color nodes
This way, the output node file of the listbox demo in gtk4-demo with
enabled layout borders is only 3.8MB instead of 12MB.
Timm Bäder [Sun, 20 Dec 2020 20:22:15 +0000 (21:22 +0100)]
GskTransform: Add nullable annotations to _equals()
Both can be NULL here.
Timm Bäder [Fri, 18 Dec 2020 17:28:17 +0000 (18:28 +0100)]
gl renderer: Proper state tracking for color matrix ops
Timm Bäder [Fri, 18 Dec 2020 17:13:28 +0000 (18:13 +0100)]
gl renderer: Add missing debug output for repeat ops
Timm Bäder [Fri, 18 Dec 2020 16:29:51 +0000 (17:29 +0100)]
gl renderer: Create shader-global uniform ops on draw()
This way we can render the first frame of tests/testoutsetshadowdrawing
in 153 ops instead of 183.
And the first frame of gtk4-demo in 260 instead of 300.
Timm Bäder [Fri, 18 Dec 2020 15:14:11 +0000 (16:14 +0100)]
gl renderer: Unify new clip/viewport rects in blur_texture()
Timm Bäder [Fri, 18 Dec 2020 09:12:28 +0000 (10:12 +0100)]
GskTransform: Fix identity transform class name
Timm Bäder [Fri, 18 Dec 2020 09:10:56 +0000 (10:10 +0100)]
GskTransform: Avoid a ref+unref pair
If gsk_transform_is_identity() returned FALSE for the next transform,
the previous code did a ref + unref pair, even though it was unneeded.
Timm Bäder [Fri, 18 Dec 2020 07:36:59 +0000 (08:36 +0100)]
icontheme: Make some constant values const
Timm Bäder [Thu, 17 Dec 2020 18:29:16 +0000 (19:29 +0100)]
pixbufutils: Only convert icon size to string once
Timm Bäder [Thu, 17 Dec 2020 17:45:47 +0000 (18:45 +0100)]
icontheme: Make icon_paintable_ensure_texture() return an unowned value
It's private, has only one caller and that one doesn't need the extra
ref.
Timm Bäder [Thu, 17 Dec 2020 16:24:31 +0000 (17:24 +0100)]
gl renderer: Avoid setting modelview to identical values
The previous comment here was incorrect. We can save the op itself, we
just can't save us the entry in the modelview stack.
Timm Bäder [Thu, 17 Dec 2020 15:32:31 +0000 (16:32 +0100)]
main: Add & use gdk_event_dup_axes()
The way this code is written trips up scan-build. Add
gdk_event_dup_axes() and use it in gtkmain.c.
Rafael Fontenelle [Mon, 21 Dec 2020 07:02:13 +0000 (07:02 +0000)]
Update Brazilian Portuguese translation
Matthias Clasen [Sun, 20 Dec 2020 22:40:48 +0000 (22:40 +0000)]
Merge branch 'ebassi/issue-3495' into 'master'
Use full path when calling gtk4-update-icon-cache
Closes #3495
See merge request GNOME/gtk!2979
Emmanuele Bassi [Sun, 20 Dec 2020 16:33:41 +0000 (16:33 +0000)]
Call the newly installed gtk4-update-icon-cache
Otherwise we rely on whatever it's inside the PATH.
Emmanuele Bassi [Sun, 20 Dec 2020 16:33:25 +0000 (16:33 +0000)]
Pass the bindir to the post-install script
Rafael Fontenelle [Sun, 20 Dec 2020 14:06:52 +0000 (14:06 +0000)]
Update Brazilian Portuguese translation
sicklylife [Sun, 20 Dec 2020 08:03:00 +0000 (08:03 +0000)]
Update Japanese translation
sicklylife [Sun, 20 Dec 2020 07:58:09 +0000 (07:58 +0000)]
Update Japanese translation
A S Alam [Sun, 20 Dec 2020 06:14:42 +0000 (06:14 +0000)]
Update Punjabi translation
Jordi Mas i Hernandez [Sat, 19 Dec 2020 18:29:08 +0000 (18:29 +0000)]
Update Catalan translation
Matthias Clasen [Sat, 19 Dec 2020 17:20:39 +0000 (17:20 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Matthiasc/for master
See merge request GNOME/gtk!2978
Matthias Clasen [Sat, 19 Dec 2020 16:43:56 +0000 (11:43 -0500)]
Revert "gl renderer: Render too big textures to the clipped area"
This reverts commit
7f6608cbedccfe8a9e7d9a211f33be15951ca144.
Matthias Clasen [Sat, 19 Dec 2020 16:43:43 +0000 (11:43 -0500)]
Revert "gl renderer: Take a out graphene_rect in blur_node()"
This reverts commit
7eece7e7690326e99d47e20e4a23a406bbd85779.
Matthias Clasen [Sat, 19 Dec 2020 16:41:14 +0000 (16:41 +0000)]
Merge branch 'ebassi/issue-3492' into 'master'
3to4: Remove GtkCheckButton:draw-indicator
Closes #3492
See merge request GNOME/gtk!2976
Emmanuele Bassi [Sat, 19 Dec 2020 15:52:22 +0000 (15:52 +0000)]
3to4: Add test for GtkCheckButton:draw-indicator removal
Emmanuele Bassi [Fri, 18 Dec 2020 23:14:24 +0000 (23:14 +0000)]
3to4: Remove GtkCheckButton:draw-indicator
The property was removed from the widget, so we need to remove it from
UI files too.
Fixes: #3492
Timm Bäder [Fri, 18 Dec 2020 15:57:30 +0000 (15:57 +0000)]
Merge branch 'doc_backticks' into 'master'
docs: backtick fixes
See merge request GNOME/gtk!2975
wisp3rwind [Fri, 18 Dec 2020 15:28:35 +0000 (16:28 +0100)]
docs: backtick fixes
- in the gettext() examples, at least the _() triggers italics
- add missing closing backtick
Matthias Clasen [Fri, 18 Dec 2020 05:06:35 +0000 (05:06 +0000)]
Merge branch 'wip/baedert/for-master' into 'master'
Wip/baedert/for master
See merge request GNOME/gtk!2973
Matthias Clasen [Fri, 18 Dec 2020 00:00:48 +0000 (00:00 +0000)]
Merge branch 'ebassi/mnemonic-label-remove' into 'master'
a11y: Fix removing mnemonic widgets
See merge request GNOME/gtk!2970
Matthias Clasen [Thu, 17 Dec 2020 23:59:41 +0000 (23:59 +0000)]
Merge branch 'ebassi/docs-for-master' into 'master'
Ebassi/docs for master
See merge request GNOME/gtk!2971
Emmanuele Bassi [Thu, 17 Dec 2020 20:50:16 +0000 (20:50 +0000)]
Do not build gdk-pixbuf's man page
When using it as a sub-project. We don't really need them.
Matthias Clasen [Thu, 17 Dec 2020 19:43:38 +0000 (19:43 +0000)]
Merge branch 'shortcuts' into 'master'
docs: Add separation between kinds of shortcuts in Keyboard input
See merge request GNOME/gtk!2964
Chris Mayo [Thu, 17 Dec 2020 19:18:10 +0000 (19:18 +0000)]
docs: Fix list of kinds of shortcuts in Keyboard input
Formatting in HTML was mangled.
Emmanuele Bassi [Thu, 17 Dec 2020 18:30:19 +0000 (18:30 +0000)]
docs: Add missing GTK types
If we don't specify the get_type() function, gtk-doc will not collect
properties and signals, and will use a different URL for the page.
Emmanuele Bassi [Thu, 17 Dec 2020 15:51:04 +0000 (15:51 +0000)]
Merge branch 'ebassi/password-entry-notify' into 'master'
Notify properties on deletion in PasswordEntryBuffer
Closes #3484
See merge request GNOME/gtk!2969
Emmanuele Bassi [Thu, 17 Dec 2020 15:49:00 +0000 (15:49 +0000)]
a11y: Fix removing mnemonic widgets
We must not use the variadic arguments version with GList, as it expects
a pointer to a GtkAccessible.
Emmanuele Bassi [Thu, 17 Dec 2020 15:13:43 +0000 (15:13 +0000)]
docs: Note the caveat on GtkEditable signals with delegates
We cannot bubble up ::insert-text and ::delete-text signals from the
delegate to the wrapper editable without causing an infinite recursion,
due to how the signals are designed; ideally, we would have decoupled
signal emission from virtual functions *before* releasing GTK4, but now
that we have, we can't break the contract.
Emmanuele Bassi [Thu, 17 Dec 2020 15:01:35 +0000 (15:01 +0000)]
Notify properties on deletion in PasswordEntryBuffer
The GtkEntryBufferClass.deleted_text() behaviour changed between GTK3
and GTK4, which means any subclass of GtkEntryBuffer is now responsible
for emitting the "notify" signal for the "text" and "length" properties.
Without this, the GtkText delegate widget used by GtkPasswordEntry would
not be able to communicate changes in the contents of its buffer.
Fixes: #3484
Emmanuele Bassi [Thu, 17 Dec 2020 13:47:01 +0000 (13:47 +0000)]
Merge branch 'issue-3483' into 'master'
Fix URLs for the download.gnome.org locations
Closes #3483
See merge request GNOME/gtk!2968
Matthias Clasen [Thu, 17 Dec 2020 12:52:22 +0000 (12:52 +0000)]
Merge branch 'wip/jimmac/flat-button-tweaks' into 'master'
Adwaita: flat button adjustments
See merge request GNOME/gtk!2967
Emmanuele Bassi [Thu, 17 Dec 2020 12:46:12 +0000 (12:46 +0000)]
Fix URLs for the download.gnome.org locations
Use a trailing slash, otherwise we end up on an out of date mirror.
Fixes: #3483
Jakub Steiner [Thu, 17 Dec 2020 10:19:46 +0000 (11:19 +0100)]
Adwaita: flat button adjustments
- normally lighter (on bg_color)
- darker for headerbar
- undecorated checked buttons were never style properly (even gtk3)
see page2 volume buttons
Finetunes https://gitlab.gnome.org/GNOME/gtk/-/issues/3427
Matthias Clasen [Wed, 16 Dec 2020 23:40:26 +0000 (23:40 +0000)]
Merge branch 'cursor-aspect-ratio' into 'master'
Cursor aspect ratio fixes for gtk 4
Closes #3441
See merge request GNOME/gtk!2966
Sebastian Keller [Wed, 16 Dec 2020 19:57:31 +0000 (20:57 +0100)]
settings: Change gtk-cursor-aspect-ratio from float to double
Float properties can not be read from keyfiles. This was causing changes
to this property in settings.ini to be ignored. Fix this by changing it
to a double.
Technically this change could be considered an API break, but there are
no users of this property as float yet and it is early enough to expect
there to never be any.
Also document this change in the 3 to 4 migration guide since in gtk 3
this setting will be kept a float.
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/3441
Emmanuele Bassi [Wed, 16 Dec 2020 20:18:27 +0000 (20:18 +0000)]
Merge branch 'fix-macos-compilation' into 'master'
macos: fix typo that breaks compilation
See merge request GNOME/gtk!2962
Matthias Clasen [Wed, 16 Dec 2020 19:56:16 +0000 (19:56 +0000)]
Merge branch 'wip/carlosg/for-master' into 'master'
gdk/x11: Transform XI_Motion based scroll into discrete
Closes #3459
See merge request GNOME/gtk!2959
Emmanuele Bassi [Wed, 16 Dec 2020 19:46:51 +0000 (19:46 +0000)]
Merge branch 'ricotz/for-master' into 'master'
gdk: Use correct parameter name to fix g-ir-scanner warning
See merge request GNOME/gtk!2963
Rico Tzschichholz [Wed, 16 Dec 2020 19:19:05 +0000 (20:19 +0100)]
gdk: Use correct parameter name to fix g-ir-scanner warning
../gdk/gdktoplevellayout.c:217: Warning: Gdk: gdk_toplevel_layout_get_maximized:
unknown parameter 'maximized' in documentation comment, should be 'maximize'
Tom Schoonjans [Wed, 16 Dec 2020 19:16:19 +0000 (19:16 +0000)]
macos: fix typo that breaks compilation
Matthias Clasen [Wed, 16 Dec 2020 16:42:33 +0000 (11:42 -0500)]
4.0
Matthias Clasen [Wed, 16 Dec 2020 17:00:53 +0000 (12:00 -0500)]
Update expected test results
We have one test that expected 3.99 to show up in an error message.
Matthias Clasen [Wed, 16 Dec 2020 16:41:44 +0000 (16:41 +0000)]
Merge branch 'ebassi/docs-for-master' into 'master'
Ebassi/docs for master
See merge request GNOME/gtk!2960
Emmanuele Bassi [Wed, 16 Dec 2020 16:07:30 +0000 (16:07 +0000)]
docs: Fix annotation for GtkSearchEntry::activate
Emmanuele Bassi [Wed, 16 Dec 2020 16:04:29 +0000 (16:04 +0000)]
doc: Document missing GtkNotebook types
Emmanuele Bassi [Wed, 16 Dec 2020 16:01:14 +0000 (16:01 +0000)]
docs: Document GtkNativeDialogClass
Emmanuele Bassi [Wed, 16 Dec 2020 15:59:50 +0000 (15:59 +0000)]
docs: Document GtkTreeViewColumn::clicked
Emmanuele Bassi [Wed, 16 Dec 2020 15:59:35 +0000 (15:59 +0000)]
docs: Add missing description for GtkWidget::move-focus
Emmanuele Bassi [Wed, 16 Dec 2020 15:50:27 +0000 (15:50 +0000)]
docs: Ignore gtkspinbuttonprivate.h
Emmanuele Bassi [Wed, 16 Dec 2020 15:49:27 +0000 (15:49 +0000)]
docs: Add missing documentation to GtkStatusbar
Emmanuele Bassi [Wed, 16 Dec 2020 15:47:29 +0000 (15:47 +0000)]
docs: Add missing stanzas for gtk_test_accessible API
Emmanuele Bassi [Wed, 16 Dec 2020 15:32:55 +0000 (15:32 +0000)]
docs: Ignore gtksorterprivate.h
Emmanuele Bassi [Wed, 16 Dec 2020 15:32:32 +0000 (15:32 +0000)]
docs: Add missing documentation to GtkPopover
Emmanuele Bassi [Wed, 16 Dec 2020 15:29:41 +0000 (15:29 +0000)]
docs: Fix documentation of GtkGestureStylus
Document all the signals, and fix the syntax for boolean values.
Emmanuele Bassi [Wed, 16 Dec 2020 15:29:24 +0000 (15:29 +0000)]
docs: Add gtk-doc stanza for GtkExpander::activate
Emmanuele Bassi [Wed, 16 Dec 2020 15:29:10 +0000 (15:29 +0000)]
docs: Fix syntax of GtkEntry::activate signal
Emmanuele Bassi [Wed, 16 Dec 2020 15:28:57 +0000 (15:28 +0000)]
docs: Remove private symbols
Emmanuele Bassi [Wed, 16 Dec 2020 15:17:13 +0000 (15:17 +0000)]
docs: Ignore gtkpasswordentryprivate.h
Emmanuele Bassi [Wed, 16 Dec 2020 15:16:51 +0000 (15:16 +0000)]
docs: Add missing documentation for GtkTextCharPredicate
Emmanuele Bassi [Wed, 16 Dec 2020 15:16:20 +0000 (15:16 +0000)]
docs: Add missing documentation GtkNative
Emmanuele Bassi [Wed, 16 Dec 2020 15:15:58 +0000 (15:15 +0000)]
docs: Add missing documentation for GtkCellRenderer
Emmanuele Bassi [Wed, 16 Dec 2020 14:54:51 +0000 (14:54 +0000)]
docs: Complete symbol coverage for GSK
100% symbol docs coverage.
241 symbols documented.
0 symbols incomplete.
0 not documented.
Emmanuele Bassi [Wed, 16 Dec 2020 14:40:12 +0000 (14:40 +0000)]
docs: Complete symbol coverage for GDK
100% symbol docs coverage.
833 symbols documented.
0 symbols incomplete.
0 not documented.
What's left are just type system macros and windowing system opaque
structures.
Matthias Clasen [Wed, 16 Dec 2020 16:02:00 +0000 (16:02 +0000)]
Merge branch 'wip/toplevel-layout-intent' into 'master'
Fix toplevel layout state communication
Closes #3466
See merge request GNOME/gtk!2958
Carlos Garnacho [Wed, 16 Dec 2020 13:07:13 +0000 (14:07 +0100)]
gdk/x11: Transform XI_Motion based scroll into discrete
Depending on the input driver, we will get XI_Motion based scroll
events for regular mouse wheels. These are intended to be handled
as discrete scroll, so detect smooth scroll events that move by
exactly 1.0 in either direction.
Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/3459
Jonas Ådahl [Wed, 16 Dec 2020 10:53:19 +0000 (11:53 +0100)]
gdk/toplevellayout: Change API to be about intent, not full state
When being fullscreen, and wanting to unfullscreen but not caring about
whether to go unmaximized or maximized (as this information is lost), if
the GdkToplevelLayout represents the full intended state, we won't be
able to do the right thing.
To avoid this issue, make the GdkToplevelLayout API intend based, where
if one e.g. doesn't call gdk_toplevel_set_maximized() with anything, the
backend will not attempt to change the maximized state.
This means we can also remove the old 'initially_maximized' and
'initially_fullscreen' fields from the private GtkWindow struct, as we
only deal with intents now.
Jonas Ådahl [Wed, 16 Dec 2020 09:10:00 +0000 (10:10 +0100)]
gtk/window: Check widget mappdness and not surface mappedness
When deciding whether to call gdk_toplevel_present(), check the
mappedness of GtkWidget instead of the mapped-ness of GdkSurface, as the
latter is mapped asynchronously, while the former is direct state of the
GtkWindow itself.
This fixes an issue where calling e.g. gtk_window_maximize() shortly
after showing it didn't take effect, as hadn't been mapped yet. While
maximizing after showing is racy, and will likely glitch from time to
time, the correct thing to do is still to maximize and handle whatever
state the compositor configured the window to be in.
Closes: https://gitlab.gnome.org/GNOME/gtk/-/issues/3466
Timm Bäder [Wed, 16 Dec 2020 08:13:12 +0000 (09:13 +0100)]
gl renderer: Take a out graphene_rect in blur_node()
Timm Bäder [Sun, 13 Dec 2020 15:29:14 +0000 (16:29 +0100)]
gl renderer: Render too big textures to the clipped area
Timm Bäder [Sat, 12 Dec 2020 13:45:11 +0000 (14:45 +0100)]
gl renderer: Unify viewport setting in add_offscreen_ops()
We use the same rect here a few times.
Timm Bäder [Tue, 15 Dec 2020 14:04:48 +0000 (15:04 +0100)]
vulkancontext: Remove usage of VK_ERROR_INCOMPATIBLE_VERSION_KHR
According to
https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/html/chap46.html
this has been removed. It also breaks the build on my system
Matthias Clasen [Tue, 15 Dec 2020 20:33:01 +0000 (20:33 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Matthiasc/for master
See merge request GNOME/gtk!2957
Matthias Clasen [Tue, 15 Dec 2020 19:18:26 +0000 (14:18 -0500)]
Add a doc comment for GskConicGradientNode
Matthias Clasen [Tue, 15 Dec 2020 19:14:49 +0000 (14:14 -0500)]
Add a doc comment for gdk_surface_request_layout
Emmanuele Bassi [Tue, 15 Dec 2020 16:54:59 +0000 (16:54 +0000)]
Merge branch 'ebassi/for-master' into 'master'
Clean up the build system
See merge request GNOME/gtk!2955
Matthias Clasen [Tue, 15 Dec 2020 16:23:15 +0000 (16:23 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Update the node format docs
See merge request GNOME/gtk!2956
Emmanuele Bassi [Tue, 15 Dec 2020 16:21:20 +0000 (16:21 +0000)]
docs: Add public symbols to the GTK reference
Emmanuele Bassi [Tue, 15 Dec 2020 16:20:21 +0000 (16:20 +0000)]
Hide GtkTextAttributes functions
The type is private, so making functions operating on it public is
pointless.
Emmanuele Bassi [Tue, 15 Dec 2020 15:55:15 +0000 (15:55 +0000)]
Remove boxed type for GtkCrossingData
The GtkCrossingData type is completely private, so there's no point in
having a boxed type for it.
Emmanuele Bassi [Tue, 15 Dec 2020 14:07:11 +0000 (14:07 +0000)]
docs: Add more private headers
Matthias Clasen [Tue, 15 Dec 2020 15:30:18 +0000 (10:30 -0500)]
Update the node format docs
Update this document to mention all the render nodes we
have, and the default values for their properties.